package com.xiaoshuidi.cloud.framework.fadada.core.enums;

import cn.hutool.core.util.ArrayUtil;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 账户类型枚举
 */
@Getter
@AllArgsConstructor
public enum VerifiedWayEnum {

    //标准方案 [运营商三要素/银行卡四要素通过，才能人脸识别认证，人脸认证通过即认证通过]
    ELEMENT_3_STANDARD("0", "三要素标准方案"),
    //补充方案 [运营商三要素/银行卡四要素通过的情况下认证成功，不通过的情况下进行人脸识别认证]
    ELEMENT_3_SUPPLEMENT("1", "三要素补充方案"),
    ELEMENT_4_STANDARD("2", "四要素标准方案"),
    ELEMENT_4_SUPPLEMENT("3", "四要素补充方案"),
    //纯要素方案 [运营商三要素/银行卡四要素通过，则认证通过]
    PURE_ELEMENT_3("4", "纯三要素方案"),
    PURE_ELEMENT_4("5", "纯四要素方案"),
    //人脸识别方案 [默认二要素+人脸识别，会配置增加手机号采集，用户信息关联手机号后允许使用短信签署，也支持刷脸签署]
    FACE_RECOGNITION("9", "人脸识别方案"),

    ;

    /**
     * 编码
     */
    private final String code;
    /**
     * 名字
     */
    private final String name;

    public static VerifiedWayEnum getByCode(String code) {
        return ArrayUtil.firstMatch(o -> o.getCode().equals(code), values());
    }

}
